Autogenerated HTML docs for v1.6.0.2-287-g3791f
diff --git a/technical/api-lockfile.html b/technical/api-lockfile.html index ab222b7..1c6982a 100644 --- a/technical/api-lockfile.html +++ b/technical/api-lockfile.html
@@ -3,7 +3,7 @@ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> -<meta name="generator" content="AsciiDoc 7.0.2" /> +<meta name="generator" content="AsciiDoc 8.2.5" /> <style type="text/css"> /* Debug borders */ p, li, dt, dd, div, pre, h1, h2, h3, h4, h5, h6 { @@ -16,8 +16,13 @@ margin: 1em 5% 1em 5%; } -a { color: blue; } -a:visited { color: fuchsia; } +a { + color: blue; + text-decoration: underline; +} +a:visited { + color: fuchsia; +} em { font-style: italic; @@ -39,13 +44,18 @@ line-height: 1.3; } -h1 { +h1, h2, h3 { border-bottom: 2px solid silver; } h2 { - border-bottom: 2px solid silver; padding-top: 0.5em; } +h3 { + float: left; +} +h3 + * { + clear: left; +} div.sectionbody { font-family: serif; @@ -70,7 +80,7 @@ color: #527bbd; font-family: sans-serif; font-weight: bold; - font-size: 1.2em; + font-size: 1.1em; } span#email { } @@ -139,6 +149,9 @@ padding: 0.5em; } +div.listingblock { + margin-right: 0%; +} div.listingblock > div.content { border: 1px solid silver; background: #f4f4f4; @@ -148,9 +161,13 @@ div.quoteblock > div.content { padding-left: 2.0em; } -div.quoteblock .attribution { + +div.attribution { text-align: right; } +div.verseblock + div.attribution { + text-align: left; +} div.admonitionblock .icon { vertical-align: top; @@ -194,13 +211,12 @@ ul, ol { list-style-position: outside; } -ol.olist2 { +div.olist2 ol { list-style-type: lower-alpha; } div.tableblock > table { - border-color: #527bbd; - border-width: 3px; + border: 3px solid #527bbd; } thead { font-family: sans-serif; @@ -214,6 +230,9 @@ margin-top: 0.8em; margin-bottom: 0.8em; } +div.hlist td { + padding-bottom: 5px; +} td.hlist1 { vertical-align: top; font-style: italic; @@ -226,6 +245,32 @@ @media print { div#footer-badges { display: none; } } + +div#toctitle { + color: #527bbd; + font-family: sans-serif; + font-size: 1.1em; + font-weight: bold; + margin-top: 1.0em; + margin-bottom: 0.1em; +} + +div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 { + margin-top: 0; + margin-bottom: 0; +} +div.toclevel2 { + margin-left: 2em; + font-size: 0.9em; +} +div.toclevel3 { + margin-left: 4em; + font-size: 0.9em; +} +div.toclevel4 { + margin-left: 6em; + font-size: 0.9em; +} /* Workarounds for IE6's broken and incomplete CSS2. */ div.sidebar-content { @@ -254,6 +299,9 @@ border-left: 2px solid silver; padding-left: 0.5em; } + +/* IE6 sets dynamically generated links as visited. */ +div#toc a:visited { color: blue; } </style> <title>lockfile API</title> </head> @@ -263,8 +311,8 @@ </div> <div id="preamble"> <div class="sectionbody"> -<p>The lockfile API serves two purposes:</p> -<ul> +<div class="para"><p>The lockfile API serves two purposes:</p></div> +<div class="ilist"><ul> <li> <p> Mutual exclusion. When we write out a new index file, first @@ -286,12 +334,12 @@ when the program dies on a signal. </p> </li> -</ul> +</ul></div> </div> </div> -<h2>The functions</h2> +<h2 id="_the_functions">The functions</h2> <div class="sectionbody"> -<dl> +<div class="vlist"><dl> <dt> hold_lock_file_for_update </dt> @@ -339,15 +387,15 @@ a negative value on failure to close(2). </p> </dd> -</dl> -<p>Because the structure is used in an <tt>atexit(3)</tt> handler, its +</dl></div> +<div class="para"><p>Because the structure is used in an <tt>atexit(3)</tt> handler, its storage has to stay throughout the life of the program. It -cannot be an auto variable allocated on the stack.</p> -<p>Call <tt>commit_lock_file()</tt> or <tt>rollback_lock_file()</tt> when you are +cannot be an auto variable allocated on the stack.</p></div> +<div class="para"><p>Call <tt>commit_lock_file()</tt> or <tt>rollback_lock_file()</tt> when you are done writing to the file descriptor. If you do not call either and simply <tt>exit(3)</tt> from the program, an <tt>atexit(3)</tt> handler -will close and remove the lockfile.</p> -<p>If you need to close the file descriptor you obtained from +will close and remove the lockfile.</p></div> +<div class="para"><p>If you need to close the file descriptor you obtained from <tt>hold_lock_file_for_update</tt> function yourself, do so by calling <tt>close_lock_file()</tt>. You should never call <tt>close(2)</tt> yourself! Otherwise the <tt>struct @@ -357,11 +405,11 @@ <tt>close(2)</tt>. Worse yet, if you <tt>close(2)</tt>, open another file descriptor for completely different purpose, and then call <tt>commit_lock_file()</tt> or <tt>rollback_lock_file()</tt>, they may close -that unrelated file descriptor.</p> +that unrelated file descriptor.</p></div> </div> <div id="footer"> <div id="footer-text"> -Last updated 02-Jul-2008 03:02:19 UTC +Last updated 2008-09-19 06:33:30 UTC </div> </div> </body>